perm filename CONTEX[S76,JMC]2 blob sn#227674 filedate 1976-07-24 generic text, type C, neo UTF8
COMMENT ⊗   VALID 00002 PAGES
C REC  PAGE   DESCRIPTION
C00001 00001
C00002 00002	.require "memo.pub[let,jmc]" source
C00010 ENDMK
C⊗;
.require "memo.pub[let,jmc]" source;
.every heading (,draft,)
.once center
draft
.skip 3
.cb CONTEXT DEPENDENT SEMANTICS


 	There is a parallel among oblique contexts in philosophical
logic, context dependent grammar (about which I know little),
the FSUBR mechanism in LISP, and call-by-name in ALGOL.
We hope someday to treat them uniformly using notions of context dependent
semantics, but for now we can only point out the parallels.

	The idea is simple.  Let us begin with the ordinary context free
semantics of terms in first order logic.   Let ⊗f be a function
symbol of one argument, and suppose the interpretation ⊗I maps 
into a function %2I(f): D → D%1.  We then have the formula

!!e70:	%2value(f[e],I) = I(f)(value(e,I))%1

where we write ⊗f[e] to represent the symbolic application of the
function symbol ⊗f to the argument expression ⊗e.  A simple form
of context dependent semantics would replace {eq e70}) by

!!e71:	%2value(f[e],I) = I(f)(value(e,I'(f)(I))%1.

The only difference is that the interpretation used to evaluate
the subexpression is not the interpretation (or environment -
to use the computer science term) of the outer expression, but
a new one that depends on the function symbol ⊗f, i.e. on the
context of the evaluation of ⊗e. 

	Unfortunately, the examples of context dependent semantics
that I have been able to find don't take that simple form.  Here
are four of them.

.item←0

	#. In modal logic we have

!!e72:	%2value(Nec e,W) = ∀W'.(A(W,W') ⊃ value(e,W'))%1.

Here ⊗W is a possible world and ⊗A(W,W') means that ⊗W' is
a possible world accesible from ⊗W. 

instead of a single altered interpretation or environment or
possible world as in the preliminary example, we need all
possible worlds accessible from ⊗W. 


	#. Next we have predicate calculus itself where we
choose to write a quantified expression as ⊗All(X,E), i.e.
as a function of a variable ⊗X and an expression ⊗E instead of
writing it ⊗∀x.e.  We have

!!e73:	%2value(All(X,E),I) = ∀x.(x ε D ⊃ value(e,assign(X,x,I)))%1,

where ⊗X is the symbol representing a variable, ⊗x ranges over the
domain of ⊗X, and ⊗assign(X,x,I) is the interpretation that results
from assigning the value ⊗x to the variable ⊗X in the interpretation
(or environment or state vector ⊗I).

	#. Consider a noun such as "criminal" as a predicate, and
suppose we want to define "alleged" so that when suitably combined
with "criminal" we can get the meaning of "alleged criminal".
We write

!!e74:	%2value(alleged[e],W) = λx.(value(∃p.Alleges(p,e[x]),W))%1,

where ⊗W is a state of the world, and ⊗alleged[e] is again a
predicate of an argument ⊗x which asserts that someone alleges
⊗e[x]. 


	#. The semantics of conditional expressions is given
by

!!e75:	%2value(%3if%2 p %3then%2 a %3else%2 b,E) =
		%3if%2 value(p,E) %3then%2 value(a,E) %3else%2 value(b,E)%1.

This can be put into greater parallelism with the above definitions
by writing its right hand side in the form

!!e76:	%2(λq.choose(q,value(a,m(q,E)),value(b,m(¬q,E))))(value(p,E))%1,

where ⊗choose(p,a,b) is just the conditional expression
%3if%2 p %3then%2 a %3else%2 b%1 again but with call-by-value
evaluation, i.e. all arguments evaluated first.  The function
⊗m(q,E) yields ⊗E if the Boolean variable ⊗q is true, but yields
a trivial environment ⊗E0 if ⊗q is false.  ⊗E0 has the property
that ⊗value(e,E0) has some conventional value independent of
⊗e.  

	Clearly these four examples have something in common.
It would be nice to find a general notion of context dependent
semantics that would permit a general context dependent model theory
to be defined and studied.
The simplest outcome would be that
context dependent model theory is just the ordinary model theory of
a somewhat different class of expressions.

	The general form of the idea is new to me, and I don't yet
know how much relevant previous work there is.

	Petrick (1976) offers the sentence %2"Were GE's earnings 
greater than IBM's in 1973?%1 for analysis.  The difficulty he
identifies is the understood %2earnings%1 attached to IBM and
the understood 1973 attached to GE.

REFERENCES:

Petrick, S.R. (1976), On Natural Language Based Computer Systems,
%2IBM J. Res. Develop.%1,%320%1,pp. 314-325.

.SKIP 2

.begin verbatim
John McCarthy
Stanford Artificial Intelligence Laboratory
Stanford University
Stanford, California 94305
.end

%7This draft of CONTEX[S76,JMC] PUBbed at {time} on {date}.%1